<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class M_Documento extends Modelo {

    public $id = null;
    public $usuarioId;
    public $nombre;
    public $descripcion;
    public $fecha;

    function __construct() {
        parent::__construct();
        $this->tabla = 'documentos';
    }

    function setAttributes($datos = array(), $tipo = 'object') {
        return parent::_setAttributes(__CLASS__, $datos, $tipo);
    }

    function doArray() {
        return parent::_doArray(__CLASS__);
    }

    /**
     * Devuelve valores por defecto en un arreglo.
     */
    function getValidacion() {
        $valid = array(
            array('field' => 'Nombre', 'label' => 'nombre', 'rules' => 'callback__nombre_check'),
            array('field' => 'fecha', 'label' => 'fecha', 'rules' => 'date|required'),
        );
        return $valid;
    }

    /**
     * Devuelve valores por defecto en un arreglo.
     */
    function valoresPorDefecto() {
        return array(
            'usuarioId' => '',
            'nombre' => '',
            'descripcion' => '',
            'fecha' => gmdate('d/m/Y'),
        );
    }

    function getDocumentosPorPedidoSubsidioId($id) {
        $this->db->select('documentos.*, demandados.causaId');
        $this->db->from('pedido_subsidios');
        $this->db->join('demandados_x_pedido_subsidios', 'demandados_x_pedido_subsidios.pedidoSubsidioId = pedido_subsidios.id');
        $this->db->join('documentos_x_pedido_subsidios', 'documentos_x_pedido_subsidios.pedidoSubsidioId = pedido_subsidios.id');
        $this->db->join('documentos', 'documentos.id = documentos_x_pedido_subsidios.documentoId');
        $this->db->join('demandados', 'demandados.id = demandados_x_pedido_subsidios.demandadoId');
        $this->db->where('demandados_x_pedido_subsidios.id', $id);

        $results = $this->db->get();

        return $results->result_object();
    }

}